[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
    Types

      MonoOrColor      = MonoCard..ColorCard

    For determining whether the colour or mono card is being used.

      VideoScrollTypes = (ScrollAutoDetect, ScrollMethod1, ScrollMethod2,
                          ScrollMethod3)

    This determines the method used  for  EGA, VGA or SVGA virtual screen
    smooth scrolling.  For VGA  ScrollAutoDetect  will work correctly but
    when using SVGA  modes  the  user  will  have  to  select  a  method.
    ScrollMethod1 should  only  be  used  in  graphics  modes  (I think).
    I included them all just in case.   Always allow the user a choice of
    modes, but  use  ScrollAutoDetect  as  the  default.  For SVGA modes,
    use ScrollMethod2 as the default.  For EGA modes, use ScrollMethod3.

      VideoCardTypes   = (MDA,CGA,EGA,VGA,SVGA,BWVGA,HerculesInColor)

    MDA is a standard  mono  card  which  only  supports  80x25 black and
    white text.  Although 40x25  is  supported,  the  text  size does not
    change.

    From what I've  heard,  HerculesInColor  looks  just  like a CGA (for
    text modes) but it acts like a  mono  card.   I have not tested this.
    It should be treated as a mono card but colour is displayed.

    CGA is a colour card supporting only 80x25 or 40x25 text modes.

    EGA supports 80x25,  40x25  and  80x43.   It  also  supports  virtual
    screens and smooth scrolling.   Note  that  the text character length
    is 8 pixels.   (The  unit  will  take  care  of  this  detail  if you
    don't access the smooth scrolling directly.)

    VGA, Super  VGA  and  Black-And-White  VGA  have  more text modes but
    most super VGA cards  have  different  mode  numbers.  Make sure that
    you allow the user to specify the mode  number for his card listed in
    his VGA manual.  The font size  in  80x25  mode is 9 pixels in length
    but for other modes the length is 8 pixels (usually).

    I can't find how to check  for  the  length  of  the font so the unit
    does some guessing.  If  you  intend  using  Super VGA modes, you may
    want  the  user  to  specify   the   font   length  (font  height  is
    detectable).

    For EGA, VGA and  SVGA  graphics  support,  see  the  PGUI which uses
    similar functions and  procedures.   Unfortunately not all SVGA cards
    support graphics scrolling yet.

      VideoStateType   = Record
                           FunctionalityInfo :Pointer;
                           VideoMode         :Byte;
                           Columns           :Word;
                           RegenBufferLength :Word;
                           RegenBufferAddr   :Word;
                           CursorPos         :Array[1..8,1..2] of Byte;
                           CursorType        :Word;
                           ActivePage        :Byte;
                           CRTControllerAddr :Word;
                           Register3x8       :Byte;
                           Register3x9       :Byte;
                           Rows              :Byte;
                           CharacterHeight   :Word;
                           DisplayCode       :Byte;
                           DisplayCodeAlt    :Byte;
                           ColoursSupport    :Word;
                           TotalDisplayPages :Byte;
                           TotalScanLines    :Byte;
                           PrimaryCharBlock  :Byte;
                           SecondaryCharBlock:Byte;
                           StateInformation  :Byte;
                           Reserved1         :Array[1..3] of Byte;
                           VideoMemory       :Byte;
                           SavePointerState  :Byte;
                           Reserved2         :Array[1..14] Of Byte;
                         End

    This is the information returned by BIOS function 1Bh.

      OneVideoCard     = Record
                           XSize           :Word;
                           YSize           :Word;
                           SX1,SY1,
                           SX2,SY2         :Word;
                           WX1,WY1,
                           WX2,WY2         :Word;
                           Address         :Word;
                           CardType        :VideoCardTypes;
                           CharacterHeight :Byte;
                           CharacterLength :Byte;
                           ScrollMethod    :VideoScrollTypes;
                         End

    This is the status of  a  video  card,  either  the  mono card or the
    colour card.

    XSize  and  YSize  specify  the  length  of  the  virtual screen.  If
    no virtual screen is active, then this is the size of the screen.

    SX1, SY1,  SX2  and  SY2  specify  the  four  corners  of the display
    area.  By default this  starts  at  the  top  left corner and ends at
    the size of the screen.

    WX1, WY1, WX2  and  WY2  specify  the  four  corners of the writeable
    (or 'window') area.

    Address is B000h or B800h,  depending  on  whether the card is colour
    or  mono.   CardType  is  either  MonoCard   or  ColorCard  and  must
    match the Address correctly.

    CharacterHeight and  CharacterLength  are  usually detected correctly
    but you may have to change the  CharacterLength  in some strange SVGA
    modes.

    ScrollMethod should be  ScrollAutoDetect  but  may have to be changed
    by the user and will have to be changed for SVGA modes.

This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson